package com.ee.chat.common.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 用户提现记录表
 * </p>
 *
 * @author Shane
 * @since 2019-09-04
 */
@TableName("user_withdraw_log")
public class UserWithdrawLog implements Serializable {

    private static final long serialVersionUID = 1L;

	/**
	 * 
	 */
	@TableId(type = IdType.AUTO)
	private Integer id;

	/**
	 * 
	 */
	@TableField(value="user_id")
	private Integer userId;

	/**
	 * 
	 */
	@TableField(value="order_number")
	private String orderNumber;

	@TableField(value = "`type`")
	private Integer type;

	/**
	 * 提现方式，0-支付宝  1-微信
	 */
	private Integer way;

	/**
	 * 提现账号
	 */
	@TableField(value="withdraw_number")
	private String withdrawNumber;

	/**
	 * 提现账号名称
	 */
	@TableField(value="withdraw_name")
	private String withdrawName;

	/**
	 * 提现套餐id
	 */
	@TableField(value="package_id")
	private Integer packageId;

	/**
	 * 积分
	 */
	private Double credit;

	/**
	 * 金额，单位分
	 */
	private Integer amount;

	/**
	 * 状态，0-申请中  1-已通过  2-已驳回
	 */
	@TableField(value = "`status`")
	private Integer status;

	/**
	 * 创建时间
	 */
	@TableField(value="create_time")
	private Date createTime;

	/**
	 * 审核人员id
	 */
	@TableField(value="audit_user_id")
	private Integer auditUserId;

	/**
	 * 审核理由
	 */
	private String reason;

	/**
	 * 审核时间
	 */
	@TableField(value="audit_time")
	private Date auditTime;

	@TableField(value="update_time")
	private Date updateTime;

	public UserWithdrawLog() {
	}

	public UserWithdrawLog(Integer userId, Integer type, String orderNumber, Integer way, String withdrawNumber, String withdrawName, Integer packageId, Double credit, Integer amount, Integer status) {
		this.userId = userId;
		this.type = type;
		this.orderNumber = orderNumber;
		this.way = way;
		this.withdrawNumber = withdrawNumber;
		this.withdrawName = withdrawName;
		this.packageId = packageId;
		this.credit = credit;
		this.amount = amount;
		this.status = status;
	}

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public Integer getUserId() {
		return userId;
	}

	public void setUserId(Integer userId) {
		this.userId = userId;
	}

	public String getOrderNumber() {
		return orderNumber;
	}

	public void setOrderNumber(String orderNumber) {
		this.orderNumber = orderNumber;
	}

	public Integer getType() {
		return type;
	}

	public void setType(Integer type) {
		this.type = type;
	}

	public Integer getWay() {
		return way;
	}

	public void setWay(Integer way) {
		this.way = way;
	}

	public String getWithdrawNumber() {
		return withdrawNumber;
	}

	public void setWithdrawNumber(String withdrawNumber) {
		this.withdrawNumber = withdrawNumber;
	}

	public String getWithdrawName() {
		return withdrawName;
	}

	public void setWithdrawName(String withdrawName) {
		this.withdrawName = withdrawName;
	}

	public Integer getPackageId() {
		return packageId;
	}

	public void setPackageId(Integer packageId) {
		this.packageId = packageId;
	}

	public Double getCredit() {
		return credit;
	}

	public void setCredit(Double credit) {
		this.credit = credit;
	}

	public Integer getAmount() {
		return amount;
	}

	public void setAmount(Integer amount) {
		this.amount = amount;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public Integer getAuditUserId() {
		return auditUserId;
	}

	public void setAuditUserId(Integer auditUserId) {
		this.auditUserId = auditUserId;
	}

	public String getReason() {
		return reason;
	}

	public void setReason(String reason) {
		this.reason = reason;
	}

	public Date getAuditTime() {
		return auditTime;
	}

	public void setAuditTime(Date auditTime) {
		this.auditTime = auditTime;
	}

	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}
}
